package org.example.entity;

import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 贷款逾期统计实体类
 * 
 * @author Generated
 */
@Data
@TableName("loan_overdue_statistics")
public class LoanOverdueStatistics {
    
    /**
     * 主键ID
     */
    @TableId(type = IdType.AUTO)
    private Long id;
    
    /**
     * 统计类型
     */
    @ExcelProperty(value = "统计类型", index = 0)
    @TableField("loan_type")
    private String loanType;
    
    /**
     * 贷款金额
     */
    @ExcelProperty(value = "贷款金额", index = 1)
    @TableField("loan_amount")
    private BigDecimal loanAmount;
    
    /**
     * 贷款笔数
     */
    @ExcelProperty(value = "贷款笔数", index = 2)
    @TableField("loan_count")
    private String loanCount;
    
    /**
     * 当前时点余额
     */
    @ExcelProperty(value = "当前时点余额", index = 3)
    @TableField("current_balance")
    private BigDecimal currentBalance;
    
    /**
     * 余额对应的客户数
     */
    @ExcelProperty(value = "余额对应的客户数", index = 4)
    @TableField("balance_customer_count")
    private String balanceCustomerCount;
    
    /**
     * 余额占比
     */
    @ExcelProperty(value = "余额占比", index = 5)
    @TableField("balance_ratio")
    private String balanceRatio;
    
    /**
     * 客户数占比
     */
    @ExcelProperty(value = "客户数占比", index = 6)
    @TableField("customer_ratio")
    private String customerRatio;
    
    /**
     * 逾期[1-30]天的笔数
     */
    @ExcelProperty(value = "逾期[1-30]天的笔数", index = 7)
    @TableField("overdue_1_to_30_count")
    private String overdue1To30Count;
    
    /**
     * 逾期[1-30]天的金额
     */
    @ExcelProperty(value = "逾期[1-30]天的金额", index = 8)
    @TableField("overdue_1_to_30_amount")
    private BigDecimal overdue1To30Amount;
    
    /**
     * 逾期[31-60]天的金额
     */
    @ExcelProperty(value = "逾期[31-60]天的金额", index = 9)
    @TableField("overdue_31_to_60_amount")
    private BigDecimal overdue31To60Amount;
    
    /**
     * 逾期[31-60]天的笔数
     */
    @ExcelProperty(value = "逾期[31-60]天的笔数", index = 10)
    @TableField("overdue_31_to_60_count")
    private String overdue31To60Count;
    
    /**
     * 逾期[61-90]天的金额
     */
    @ExcelProperty(value = "逾期[61-90]天的金额", index = 11)
    @TableField("overdue_61_to_90_amount")
    private BigDecimal overdue61To90Amount;
    
    /**
     * 逾期[61-90]天的笔数
     */
    @ExcelProperty(value = "逾期[61-90]天的笔数", index = 12)
    @TableField("overdue_61_to_90_count")
    private String overdue61To90Count;
    
    /**
     * 逾期[91-120]天的金额
     */
    @ExcelProperty(value = "逾期[91-120]天的金额", index = 13)
    @TableField("overdue_91_to_120_amount")
    private BigDecimal overdue91To120Amount;
    
    /**
     * 逾期[91-120]天的笔数
     */
    @ExcelProperty(value = "逾期[91-120]天的笔数", index = 14)
    @TableField("overdue_91_to_120_count")
    private String overdue91To120Count;
    
    /**
     * 逾期[121-150]天的金额
     */
    @ExcelProperty(value = "逾期[121-150]天的金额", index = 15)
    @TableField("overdue_121_to_150_amount")
    private BigDecimal overdue121To150Amount;
    
    /**
     * 逾期[121-150]天的笔数
     */
    @ExcelProperty(value = "逾期[121-150]天的笔数", index = 16)
    @TableField("overdue_121_to_150_count")
    private String overdue121To150Count;
    
    /**
     * 逾期[151-180]天的金额
     */
    @ExcelProperty(value = "逾期[151-180]天的金额", index = 17)
    @TableField("overdue_151_to_180_amount")
    private BigDecimal overdue151To180Amount;
    
    /**
     * 逾期[151-180]天的笔数
     */
    @ExcelProperty(value = "逾期[151-180]天的笔数", index = 18)
    @TableField("overdue_151_to_180_count")
    private String overdue151To180Count;
    
    /**
     * 逾期[181+]天的金额
     */
    @ExcelProperty(value = "逾期[181+]天的金额", index = 19)
    @TableField("overdue_181_plus_amount")
    private BigDecimal overdue181PlusAmount;
    
    /**
     * 逾期[181+]天的笔数
     */
    @ExcelProperty(value = "逾期[181+]天的笔数", index = 20)
    @TableField("overdue_181_plus_count")
    private String overdue181PlusCount;
    
    /**
     * 逾期总笔数
     */
    @ExcelProperty(value = "逾期总笔数", index = 21)
    @TableField("total_overdue_count")
    private String totalOverdueCount;
    
    /**
     * 逾期总余额
     */
    @ExcelProperty(value = "逾期总余额", index = 22)
    @TableField("total_overdue_amount")
    private BigDecimal totalOverdueAmount;
    
    /**
     * 逾期30天以上的笔数
     */
    @ExcelProperty(value = "逾期30天以上的笔数", index = 23)
    @TableField("overdue_30_days_plus_count")
    private String overdue30DaysPlusCount;
    
    /**
     * 逾期30天以上的金额
     */
    @ExcelProperty(value = "逾期30天以上的金额", index = 24)
    @TableField("overdue_30_days_plus_amount")
    private BigDecimal overdue30DaysPlusAmount;
    
    /**
     * 逾期60天以上的笔数
     */
    @ExcelProperty(value = "逾期60天以上的笔数", index = 25)
    @TableField("overdue_60_days_plus_count")
    private String overdue60DaysPlusCount;
    
    /**
     * 逾期60天以上的金额
     */
    @ExcelProperty(value = "逾期60天以上的金额", index = 26)
    @TableField("overdue_60_days_plus_amount")
    private BigDecimal overdue60DaysPlusAmount;
    
    /**
     * 逾期90天以上的笔数
     */
    @ExcelProperty(value = "逾期90天以上的笔数", index = 27)
    @TableField("overdue_90_days_plus_count")
    private String overdue90DaysPlusCount;
    
    /**
     * 逾期90天以上的金额
     */
    @ExcelProperty(value = "逾期90天以上的金额", index = 28)
    @TableField("overdue_90_days_plus_amount")
    private BigDecimal overdue90DaysPlusAmount;
    
    /**
     * 逾期120天以上的笔数
     */
    @ExcelProperty(value = "逾期120天以上的笔数", index = 29)
    @TableField("overdue_120_days_plus_count")
    private String overdue120DaysPlusCount;
    
    /**
     * 逾期120天以上的金额
     */
    @ExcelProperty(value = "逾期120天以上的金额", index = 30)
    @TableField("overdue_120_days_plus_amount")
    private BigDecimal overdue120DaysPlusAmount;
    
    /**
     * 逾期150天以上的笔数
     */
    @ExcelProperty(value = "逾期150天以上的笔数", index = 31)
    @TableField("overdue_150_days_plus_count")
    private String overdue150DaysPlusCount;
    
    /**
     * 逾期150天以上的金额
     */
    @ExcelProperty(value = "逾期150天以上的金额", index = 32)
    @TableField("overdue_150_days_plus_amount")
    private BigDecimal overdue150DaysPlusAmount;
    
    /**
     * 逾期180天以上的笔数
     */
    @ExcelProperty(value = "逾期180天以上的笔数", index = 33)
    @TableField("overdue_180_days_plus_count")
    private String overdue180DaysPlusCount;
    
    /**
     * 逾期180天以上的金额
     */
    @ExcelProperty(value = "逾期180天以上的金额", index = 34)
    @TableField("overdue_180_days_plus_amount")
    private BigDecimal overdue180DaysPlusAmount;
    
    /**
     * 件均
     */
    @ExcelProperty(value = "件均", index = 35)
    @TableField("average_loan_amount")
    private BigDecimal averageLoanAmount;
    
    /**
     * 总逾期率
     */
    @ExcelProperty(value = "总逾期率", index = 36)
    @TableField("total_overdue_rate")
    private String totalOverdueRate;
    
    /**
     * 维度
     */
    @ExcelProperty(value = "维度", index = 37)
    @TableField("dimension")
    private String dimension;
    
    /**
     * 创建时间
     */
    @TableField("created_at")
    private LocalDateTime createdAt;
    
    /**
     * 更新时间
     */
    @TableField("updated_at")
    private LocalDateTime updatedAt;
}
